package br.com.medvagas.negocio.facade;

import java.util.List;

import br.com.medvagas.comum.entidade.AreaAtuacao;
import br.com.medvagas.comum.entidade.Classificacao;
import br.com.medvagas.comum.entidade.Empresa;
import br.com.medvagas.comum.entidade.Municipio;
import br.com.medvagas.comum.entidade.Pais;
import br.com.medvagas.comum.entidade.RamoAtuacao;
import br.com.medvagas.comum.entidade.ServicoDisponivel;
import br.com.medvagas.comum.entidade.Uf;
import br.com.medvagas.comum.entidade.UsuarioDescadastrado;
import br.com.medvagas.comum.entidade.UsuarioEmpresa;

public interface ICadastrarEmpresa {

	String NOME = "cadastrarEmpresa";
	
	UsuarioEmpresa cadastrarEmpresa(Empresa empresa);
	Empresa salvar(Empresa empresa);

	UsuarioEmpresa consultarUsuario(Integer idUsuarioEmpresa);
	
	UsuarioEmpresa alterarUsuarioEmpresa(UsuarioEmpresa usuarioEmpresa);
	void alterarSenhaUsuario(Integer idUsuarioEmpresa, String senhaAtual, String senhaNova);
	
	List<Empresa> consultarEmpresas(Integer idUsuarioEmpresa);
	Empresa consultarEmpresaPorId(Integer idEmpresa);
	
	List<AreaAtuacao> consultarAreaAtuacao();
	List<Pais> consultarPais();
	List<Uf> consultarUf();
	List<Municipio> consultarMunicipio(String siglaUf);
	
	void excluirEmpresa(Empresa empresa);
	List<Classificacao> consultarClassifiacao();
	List<RamoAtuacao> consultarRamoAtuacao();
	List<ServicoDisponivel> consultarServicoDisponivel();
	void descadastrar(UsuarioDescadastrado usuarioDescadastrado);
	
	
	
	/* metdos utilizados pelo usuario admin */
	List<UsuarioEmpresa> consultarTodos();
	void excluirUsuario(Integer idUsuarioEmpresa);

}